#pragma once
#include"Common.h"
class CentralCache {
	public:
	static CentralCache* GetInstance() {
			return &_sInst;
		}
		size_t FetchRangeObj(void*& start, void*& end, size_t n, size_t byte);
		Span* GetOneSpan(SpanList& list, size_t bytes);
		void ReleaseListToSpans(void* start, size_t size);
		
	private:
		SpanList _span_freelist[NFREELISTS];
    private:
		CentralCache() {
		}
		CentralCache(const CentralCache&) = delete;
		static CentralCache _sInst;
};